﻿using Newtonsoft.Json;
using ParsePtb.attr;

namespace ess_zbfz_main.entity
{

    /// <summary>
    /// cs端 采购项目信息
    /// </summary>
    [TableNameAttr("OS_ZB_PURCHASE_PROJECT_INFO")]
    public class OsZbPurchaseProjectInfo
    {


        //当前excel的行
        [ColumnInfoAttr(-10, 1000, true)]
        private int curExcelIndex;


        [TableFieldAttr("ID", null, null, true, true, null)]
        [ColumnInfoAttr(-2, 70, false, null, "")]
        private string id;


        [TableFieldAttr("PROJECT_NO", null, null, false, false, null)]
        [ColumnInfoAttr(1, 70, false, null, "", ColumnName = "招标项目编号")]
        private string projectNo;


        [TableFieldAttr("PROJECT_NAME", null, null, false, false, null)]
        [ColumnInfoAttr(2, 100, false, null, "", ColumnName = "招标项目名称")]
        private string projectName;


        [TableFieldAttr("MARK_NO", null, null, false, false, null)]
        [ColumnInfoAttr(3, 70, false, null, "", ColumnName = "标段标号")]
        private string markNo;


        [TableFieldAttr("MARK_NAME", null, null, false, false, null)]
        [ColumnInfoAttr(4, 70, false, null, "", ColumnName = "标段")]
        private string markName;


        [TableFieldAttr("PACK_NO", null, null, false, false, null)]
        [ColumnInfoAttr(-100, 70, true, null, "")]
        private string packNo;


        [TableFieldAttr("PACK_NAME", null, null, false, false, null)]
        [ColumnInfoAttr(5, 70, false, null, "", ColumnName = "分包名称")]
        private string packName;


        [TableFieldAttr("CREATE_USER", null, null, false, false, null)]
        private string createUser;


        [TableFieldAttr("CREATE_TIME", "datetime('now','localtime')", null, false, false, null)]
        private string createTime;


        [TableFieldAttr("UPDATE_USER", null, null, false, false, null)]
        private string updateUser;


        [TableFieldAttr("UPDATE_TIME", "datetime('now','localtime')", null, false, false, null)]
        //[ColumnInfoAttr(8, 70, false, null, "")]
        private string updateTime;


        [TableFieldAttr("STATUS", null, null, false, false, null)]
        private string status;



        [TableFieldAttr("BUSINESS_FILE_WAY", null, null, false, false, null)]
        [ColumnInfoAttr(7, 70, false, null, "", ColumnName = "商务文件")]
        private string businessFileWay;


        [TableFieldAttr("SKILL_FILE_WAY", null, null, false, false, null)]
        [ColumnInfoAttr(6, 70, false, null, "", ColumnName = "技术文件")]
        private string skillFileWay;

        //产品和部件是否需要填写
        [TableFieldAttr("CPBJ_MARK")]
        private string cpbjMark;

        //标集合
        [TableFieldAttr("marks", false)]
        private string marks;


        private string businessFileWayName;


        private string skillFileWayName;


        [TableFieldAttr("GET_END_TIME")]
        //[ColumnInfoAttr(19, 35, false, null, "")]
        private string getEndTime;


        [TableFieldAttr("OPEN_BID_TIME")]
        [ColumnInfoAttr(9, 20, false)]
        private string openBidTime;

        //是否报名
        [TableFieldAttr("SIGN_UP")]
        //[ColumnInfoAttr(10, 15, false)]
        private string signUp;

        //招标状态--匹配线上数据库的PROJECT_STATUS
        [TableFieldAttr("PROJECT_STATUS")]
        [ColumnInfoAttr(10, 15, false)]
        private string projectStatus;

        //供应商id
        [TableFieldAttr("SUPPLIER_ID")]
        private string supplierId;

        //采购类型  物资和服务【非物资】
        [TableFieldAttr("PURCHASE_TYPE")]
        [ColumnInfoAttr(11, 15, false)]
        private string purchaseType;

        //是否已选择
        [TableFieldAttr("SELECTED")]
        private string selected;


        //是否已选择
        [TableFieldAttr("selectName", false)]
        private string selectName;


        //商务支持文件是否已上传
        [TableFieldAttr("BUSINESS_IS_UPLOAD")]
        private string businessIsUpload;

        //技术支持文件是否已上传
        [TableFieldAttr("SKILL_IS_UPLOAD")]
        private string skillIsUpload;


        ///<summary>
        ///主键
        ///</summary>
        [JsonProperty("id")]
        public string Id { get => id; set => id = value; }

        ///<summary>
        ///项目编号
        ///</summary>
        [JsonProperty("projectNo")]
        public string ProjectNo { get => projectNo; set => projectNo = value; }

        ///<summary>
        ///项目名称
        ///</summary>
        [JsonProperty("projectName")]
        public string ProjectName { get => projectName; set => projectName = value; }

        ///<summary>
        ///标编号
        ///</summary>
        [JsonProperty("markNo")]
        public string MarkNo { get => markNo; set => markNo = value; }

        ///<summary>
        ///标名称
        ///</summary>
        [JsonProperty("markName")]
        public string MarkName { get => markName; set => markName = value; }

        ///<summary>
        ///包号
        ///</summary>
        [JsonProperty("packNo")]
        public string PackNo { get => packNo; set => packNo = value; }

        ///<summary>
        ///包名称
        ///</summary>
        [JsonProperty("packName")]
        public string PackName { get => packName; set => packName = value; }


        ///<summary>
        ///创建人
        ///</summary>
        public string CreateUser { get => createUser; set => createUser = value; }

        ///<summary>
        ///创建时间
        ///</summary>
        public string CreateTime { get => createTime; set => createTime = value; }

        ///<summary>
        ///更新人
        ///</summary>
        public string UpdateUser { get => updateUser; set => updateUser = value; }

        ///<summary>
        ///更新时间
        ///</summary>
        public string UpdateTime { get => updateTime; set => updateTime = value; }

        ///<summary>
        ///状态
        ///</summary>
        public string Status { get => status; set => status = value; }
        public int CurExcelIndex { get => curExcelIndex; set => curExcelIndex = value; }
        public string BusinessFileWay { get => businessFileWay; set => businessFileWay = value; }
        public string SkillFileWay { get => skillFileWay; set => skillFileWay = value; }
        public string BusinessFileWayName { get => businessFileWayName; set => businessFileWayName = value; }
        public string SkillFileWayName { get => skillFileWayName; set => skillFileWayName = value; }
        public string GetEndTime { get => getEndTime; set => getEndTime = value; }
        public string OpenBidTime { get => openBidTime; set => openBidTime = value; }

        /// <summary>
        /// 是否已经报名
        /// </summary>
        [JsonProperty("signUp")]
        public string SignUp { get => signUp; set => signUp = value; }

        /// <summary>
        /// 招标状态
        /// </summary>
        [JsonProperty("projectStatus")]
        public string ProjectStatus { get => projectStatus; set => projectStatus = value; }

        /// <summary>
        /// 供应商id
        /// </summary>
        [JsonProperty("supplierId")]
        public string SupplierId { get => supplierId; set => supplierId = value; }

        /// <summary>
        /// 采购类型 物资/服务
        /// </summary>
        [JsonProperty("purchaseType")]
        public string PurchaseType { get => purchaseType; set => purchaseType = value; }
        public string Selected { get => selected; set => selected = value; }
        public string SelectName { get => selectName; set => selectName = value; }
        public string BusinessIsUpload { get => businessIsUpload; set => businessIsUpload = value; }
        public string SkillIsUpload { get => skillIsUpload; set => skillIsUpload = value; }
        public string CpbjMark { get => cpbjMark; set => cpbjMark = value; }
        public string Marks { get => marks; set => marks = value; }
    }
}
